草庐IT

MySQL 单表缓存

全部标签

PHP/MySQL/jQuery 记录的悲观锁

我一直在考虑为我参与的应用程序开发一些简单的记录锁定。有一些用户会花费数小时来完成对记录的编辑。当其他人想要更改记录时,这会导致问题。目前不涉及锁定。我不确定乐观锁定在我的情况下是否可靠,因为记录是通过AJAX请求保存的。我正在考虑应用某种悲观锁定;使用两个字段,例如locking_user_id和locking_timestamp,我可以跟踪谁打开了记录以及上次打开记录的时间。但是,由于用户可能一次打开它几个小时,我怎么知道用户是放弃了它还是只是在努力工作?我不想强制他们每5分钟更新一次~但这可能是可能的(AJAX每5分钟保存一次)。也许jQuery进程可以在用户工作时进行计数,并会

php - function_exists() 缓存它的查询吗?

我想知道function_exists()在内部缓存其查询? 最佳答案 No,itdoesnot.它只是检查函数是否在函数表中定义。很简单。然而,theZendOpcacheextensionmayoptimizeoutsomecallstofunction_exists()以及在某些情况下可以在编译时评估的某些其他功能。(它只优化了对function_exists()的调用,其中函数由PHP或扩展在内部定义。) 关于php-function_exists()缓存它的查询吗?,我们在St

PHP 日志 - mysql 与文件

我正在为我的PHP站点设置用户操作日志记录。您建议将它们存储在mysql中还是文本/日志文件中? 最佳答案 取决于你想用这些做什么,我会说:如果您需要从日志中获取数据,将它们存储在MySQL中可能会有所帮助如果您只需要一些您几乎从不使用的数据(但在您的网站上发生非法行为或类似情况时需要),一个文件可能就足够了为了不减慢太多速度,您也可以同时使用两者(我在一些流量有点大的网站上使用过,在这些网站上立即将数据存储在数据库中是不明智的):白天,将日志存储在文件中每天一次(或者每小时一次,你懂的),使用批处理来解析这些文件,并将数据放入数据

PHP 将 MySQL 日期时间转换为 Unix 时间戳

在将MySQL日期时间转换为Unix时间戳时,我对时区差异感到困惑。在我看来,MySQL日期时间(2011-02-0709:45:00)在服务器的本地时区中。我想将此日期时间转换为Unix时间戳,它始终处于GMT时区。为了进行这种转换,PHP将日期时间传递给strtotime。.日期时间字符串不包含时区,那么strtotime是否会假设参数是本地时区或GMT? 最佳答案 strtotime函数将假定日期时间在服务器的本地时区内。 关于PHP将MySQL日期时间转换为Unix时间戳,我们在

php - 判断从 MySQL 返回的日期时间字符串是否为空的最佳方法?

未在MySQL中设置的日期时间字段将返回为0000-00-0000:00:00确定日期是否未在PHP中设置的最佳方法是什么?如果这些有效则无:if($date)//willreturntruebecauseitisavalidstringif(empty($date))//willalsoreturntrue.if(strtotime($date))//Ithoughtthiswouldworkbutitreturnsanegativenumberandistrue.我可以使用:if($date=='0000-00-0000:00:00')但是,如果我随后将列类型更改为仅日期,它就会中

php - Gettext 缓存的烦恼

我目前正在努力使用PHP中的gettext。Gettext使用缓存。这是一件好事,但当我更新我的翻译时,我无法访问它们,这很烦人。我读到,除了重新启动网络服务器之外,我们无法刷新缓存,这不是一个可行的解决方案。其他人使用不同名称的.mo文件的副本来强制重新加载它们。第一个问题我正在搜索gettext将文件缓存在内存中的时间,以考虑我的应用程序在字符串出现之前等待该时间是否可以接受。但是我找不到那个信息...持续时间是无限的吗?第二个问题我无法想象像gettext这样受欢迎的项目还没有解决这个问题的方法。它是特定于PHP的吗?提前感谢您的答复。问候。 最佳答案

php - 通过 URL 缓存是一种好习惯吗?

我正在用PHP构建一个相当大和复杂的CMS,我的计划是在它的某些部分实现缓存(有可能为特定页面/部分打开/关闭缓存)。经过一番研究后,我得出结论,使用URL是定位和检索cahced文件的最佳做法。我的意图是实现一个“整页”解决方案,以避免干扰查询缓存并缓存整个页面,对于所有应该被缓存的页面。伪代码如下(不包括修改日期):$filename=md5($the_full_url);if(file_exists($filename))get_cached_file($filename);elsewrite_cached_file($filename);这种方法可以被认为是好的做法吗?

php - mysql_connect 错误

在下面的代码中,我看到了echo1语句,之后我没有看到UI上打印任何内容。用户名和密码是正确的。但是PHP好像连不上MySQL。甚至看不到死亡声明我做错了什么。在遇到mysql_connect后,其余代码不起作用: 最佳答案 你应该错过了一个错误。添加:ini_set('display_errors',1);error_reporting(E_ALL);在脚本的开头 关于php-mysql_connect错误,我们在StackOverflow上找到一个类似的问题:

php - 如何禁用缓存 100%

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:CacheControlfails我目前正在使用:header("Cache-Control:no-store,no-cache,must-revalidate");header("Cache-Control:post-check=0,pre-check=0",false);header("Last-Modified:".gmdate("D,dMYH:i:s")."GMT");和但它仍然缓存

php - 代码点火器缓存?

我正在努力使我的网站更快,因为我希望它能够尽可能快地加载。不过,我在缓存方面遇到了一些麻烦。我正在尝试使用this,但似乎缓存了整个页面并且我的内容发生了很大变化。我是否可以只缓存某些我知道不会改变的View?如页眉、页脚和主页。 最佳答案 CI缓存的目的是减少数据库查询的次数、任何耗时的PHP计算等...基本上,它会从您的Controller(当然还有它调用的所有View)呈现纯HTML页面).所以,它不会真正加快页眉和页脚的速度,除非你从数据库或任何动态和繁重的东西中为它们提取数据......但是任何现代浏览器都会为你缓存它,除